<?php 
////////////////////////////////////////////////////////////////////////////
//                                                                        //
// NOTICE OF COPYRIGHT                                                    //
//                                                                        //
// Dean`s Office for Moodle                                               //
// Электронный деканат                                                    //
// <http://deansoffice.ru/>                                               //
//                                                                        //
// Copyright (C) 2008-2999  Massa 						                  //
//                                                                        //
// This program is free software: you can redistribute it and/or modify   //
// it under the terms of the GNU General Public License as published by   //
// the Free Software Foundation, either version 3 of the Licensen.        //
//                                                                        //
// This program is distributed in the hope that it will be useful,        //
// but WITHOUT ANY WARRANTY; without even the implied warranty of         //
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the          //
// GNU General Public License for more details.                           //
//                                                                        //
// You should have received a copy of the GNU General Public License      //
// along with this program.  If not, see <http://www.gnu.org/licenses/>.  //
//                                                                        //
////////////////////////////////////////////////////////////////////////////

/**
 * Динамически изменяемая форма для добавления/редактирования постов и комментариев
 *
 */

//подключаем собственную библиотеку
require_once('lib.php');

//подключаем библиотеку форм
$DOF->modlib('widgets')->webform();

/** Класс формы
 *
 * Объект формы наследует свойства и методы класса dof_modlib_widgets_form
 */
class dof_im_imguestbook_gbform extends dof_modlib_widgets_form
{
    /**
     * @var dof_control
     */
    protected $dof;

    /*
     * Код плагина
    */
    protected function im_code()
    {
        return 'imguestbook';
    }

    function definition()
    {
		global $DOF;

        // создаем ссылку на HTML_QuickForm
        $mform =& $this->_form;

        //создаем заголовок формы
        $mform->addElement('header','formtitle');

		//добавляем элемент: текстовая строка
		//отсекаем лишнее: допускается только текст без "лишних" символов 
		//добавляем простое правило валидации: требуется наличие содержимого, проверка на "клиенте" 
    	$mform->addElement('text', 'name', $DOF->get_string('nameforpost', 'imguestbook'));
		$mform->setType('name', PARAM_TEXT);
		$mform->addRule('name', null, 'required', null, 'client');

		//добавляем элемент: редактор
		//разрешаем любое содержимое в массиве 
		//добавляем простое правило валидации: требуется наличие содержимого, проверка на "клиенте" 
		$mform->addElement('editor', 'post', $DOF->get_string('posttext', 'imguestbook'));
		$mform->setType('post', PARAM_RAW);
		$mform->addRule('post', null, 'required', null, 'client');

		//добавляем элементы: скрытые поля типа INT
		$mform->addElement('hidden', 'id');
		$mform->setType('id', PARAM_INT);
		$mform->addElement('hidden', 'pid');
		$mform->setType('pid', PARAM_INT);

		//добавляем стандартизованные кнопки типа SUBMIT и CANCEL 
		$this->add_action_buttons();
	}
}

?>
